package com.yd.app.service.pc.gtypeService;

import com.yd.app.mapper.GTypemapper;
import com.yd.app.service.common.BaseService;
import com.yd.domain.business.GType;
import com.yd.domain.commom.PageModel;
import com.yd.domain.searchParam.GTypeParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.ArrayList;
import java.util.List;

/**
 * @author zy
 * @create 2018-03-08 17:16
 * @desc
 **/
@Service
public class GTypeService extends BaseService {
    @Autowired
    private GTypemapper gTypemapper;
    /**
     * @Author: zy
     * @Desc: 录入商品类型
     * @Date:  2018/3/9
     * @Param
     */
    public void  addGType(GType gType){
        gTypemapper.addGType(gType);
    }
    /**
     * @Author: zy
     * @Desc: 商品类型修改
     * @Date:  2018/3/9
     * @Param
     */
    public void updateGType(GType gType){
        gTypemapper.updateGType(gType);
    }
    /**
     * @Author: zy
     * @Desc: 商品类型删除
     * @Date:  2018/3/9
     * @Param
     */
    public void deleteGType(String id){
        gTypemapper.deleteGType(id);
    }
    /**
     * @Author: zy
     * @Desc: 商品类型停用
     * @Date:  2018/3/9
     * @Param
     */
    public void updateUse(GType gType){
        gTypemapper.updateIfUse(gType);
    }
    /**
     * @Author: zy
     * @Desc:  分页查询商品类型
     * @Date:  2018/3/9
     * @Param
     */
    public PageModel getGTypeList(GTypeParam gTypeParam, int pageIndex, int pageSize){
        PageModel pm=new PageModel();
        List<GType> list=new ArrayList<>();
        list=gTypemapper.searchGTypeList(gTypeParam,getStartRow(pageIndex,pageSize),pageSize);
        int count=0;
        if(pageIndex==1){
            //查询总条数
            count=gTypemapper.searchGTypeCount(gTypeParam);
            pm.setCount(count);
        }
        pm.setList(list);
        return pm;
    }
    /**
     * @Author: sxh
     * @Desc:  获取商品类型列表
     * @Date:  2018/3/9
     * @Param
     */
    public List<GType> getGTypeList(String type){
        List<GType> list=new ArrayList<>();
        list=gTypemapper.getGTypeList(type);
        return list;
    }
    /**
     * @Author: zy
     * @Desc: 批量删除
     * @Date:  2018/3/9
     * @Param
     */
    public void deleteAll(GType gType){
        gTypemapper.deleteAll(gType);
    }
    /**
     * @Author: zy
     * @Desc: 批量停用
     * @Date:  2018/3/9
     * @Param
     */
    public void updateAllIfUse(GType gType) {
        gTypemapper.updateAllIfUse(gType);
    }
    /**
     * @Author: zy
     * @Desc: 查询商品类型
     * @Date:  2018/4/12
     * @Param
     */
    public List<GType> getGoodType(String goodKind) {
        List<GType> list= gTypemapper.getGoodType(goodKind);
        return list;
    }
    /**
     * 一键更新价格
     * @param gType
     */
    public void updatePrice(GType gType) {
        gTypemapper.updateAllGoodsPriceByGtype(gType.getpId(),gType.getId(),gType.getPrice());
    }

    public List<GType> getListByIds(String ids) {
        List<GType> list=gTypemapper.getListByIds(ids);
        return list;
    }
}
